package com.lvy.hczn.transmit.domain.dto.cteck;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 仓库信息
 *
 * @author QuYachu
 */
@Data
public class RepositoryInfo implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 仓库编码
     */
    private String repId;

    /**
     * 父节点（总仓ID）
     */
    private String parentId;

    private List<String> repIdList;

    private String likeRepId;

    /**
     * 仓库名称
     */
    private String repName;

    /**
     * 仓库地址
     */
    private String repAddress;

    /**
     * 仓库联系人
     */
    private String repContact;

    /**
     * 仓库联系人电话
     */
    private String repPhone;

    /**
     * 状态: -1为删除，0为禁用，1为正常
     */
    private Integer status;

    /**
     * 仓库类型(1前置仓、2CDC仓)
     */
    private Integer repType;

    /**
     * 默认发货店铺
     */
    private String shopCode;

    /**
     * 默认发货店铺名称
     */
    private String shopTitle;

    /**
     * 店铺名称
     */
    private String sellerCode;

    /**
     * 安全阀值
     */
    private String safetyThreshold;

    /**
     * 创建时间
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /**
     * 创建人
     */
    private String createUser;

    /**
     * 更新时间
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING, pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;

    /**
     * 更新人
     */
    private String updateUser;

    /**
     * 手机号码
     */
    private String mobile;

    /**
     * 省
     */
    private String province;

    /**
     * 市
     */
    private String city;

    /**
     * 区
     */
    private String district;

    /**
     * 详细地址(废弃,使用仓库地址)
     */
    private String address;

    /**
     * 仓库店铺 0 自营仓、1店铺仓(废弃)
     */
    private Integer repShop;

    /**
     * 经度
     */
    private BigDecimal longitude;

    /**
     * 纬度
     */
    private BigDecimal latitude;

    /**
     * 外部仓库地址
     */
    private String externalRepId;

    private String likeExternalRepId;

    /**
     * 仓库编码(不包含)
     */
    private String repIdNot;

    private String areaCode;

    /**
     * 仓库总库位数
     */
    private BigDecimal totalStorageCount;

    /**
     * 关联的总仓编码
     */
    private String associationRepId;

    /**
     * 仓库温区信息
     */
    List<RepTemperArea> repTemperAreaList;

    /**
     * 地区名称 组成规则（省份名称+空格+城市名称+空格+区名称）
     */
    private String regionName;
}
